require 'erb'

module CSDNConfig

	module XMLHelpers
		def apply_template(template, context=binding)

			if template.is_a? Symbol
				templateFile = File.join(File.dirname(__FILE__),'..', 'templates', "#{template}.xml.erb")
				File.exist?(templateFile) or raise "Could not find template file #{templateFile}!"
				template = File.read(templateFile)
			end
			
			ERB.new(template,nil,'>').result(context)
		end

		def xml_escape str
			str.encode(xml: :text)
		end

	end

end
